/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package issr.controller;

import issr.entity.Lotto;
import issr.entity.Prodotto;
import issr.entity.Puntovendita;
import issr.entity.Utente;
import issr.persistence.Database;
import java.io.Serializable;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

/**
 *
 * @author Soulreaver
 */
public class ControlloreInserimentoLotto implements Serializable {

    private Database db = Database.getInstance();

    public ControlloreInserimentoLotto() {
    }

    public ArrayList<Prodotto> ottieniCatalogo(Puntovendita pv) {
        return db.caricaCatalogo(pv);
    }

    public boolean inserisciLotto(Prodotto prodotto, int gs1barCode, int quantita, String scadenza, Utente utente) {
        try {
            Puntovendita pv = utente.getPuntovendita();
            DateFormat formatter;
            Date scadenzaDate = null;
            formatter = new SimpleDateFormat("dd-MM-yyyy");
            scadenzaDate = (Date) formatter.parse(scadenza);
            
            Lotto daInserire = new Lotto(prodotto, pv, gs1barCode, quantita, new Date(), scadenzaDate);
            db.inserisciLotto(daInserire);
            db.aggiornaContatori(prodotto, 0, quantita, 0, 0, 0);
            db.aggiungiEntry(
                    utente,
                    "Lotto inserito: " + daInserire);
            return true;
        } catch (Exception e) {
            return false;
        }
    }
}
